home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / pluginy Firefox / 57805 / 57805.xpi / content / keyutils.js < prev    next >
Text File  |  2010-01-23  |  3KB  |  76 lines

  1. /* 
  2.         #################################################################
  3.         #   Firefox GUI Minify                                          #
  4.         #################################################################
  5.         #   Author:     Domenico Martella                               #
  6.         #   E-mail:     domenico.martella@alcacoop.it                   #
  7.         #   Date:       2010-01-04                                      #
  8.         #################################################################
  9.         #                                                               #
  10.         #       Copyright (C) 2010  - Alca Soc. Coop. (Lecce, IT)       #
  11.         #       http://www.alcacoop.it                                  #
  12.         #                                                               #
  13.         # This program is free software; you can redistribute           #
  14.         # it and/or modify it under the terms of the GNU General        #
  15.         # Public License as published by the Free Software              #
  16.         # Foundation; either version 3 of the License, or (at your      #
  17.         # option) any later version.                                    #
  18.         #                                                               #
  19.         # This program is distributed in the hope that it will be       #
  20.         # useful, but WITHOUT ANY WARRANTY; without even the            #
  21.         # implied warranty of MERCHANTABILITY or FITNESS FOR A          #
  22.         # PARTICULAR PURPOSE.  See the GNU General Public License       #
  23.         # for more details.                                             #
  24.         #                                                               #
  25.         # You should have received a copy of the GNU General            #
  26.         # Public License along with this program; if not, write to      #
  27.         # the Free Software Foundation, Inc., 59 Temple Place -         #
  28.         # Suite 330, Boston, MA  02111-1307, USA.                       #
  29.         #################################################################
  30. */ 
  31.  
  32. var KeyUtils = {
  33.  
  34.   _doKeymap : function(){
  35.     var keymap = Array();
  36.     for (var i=48;i<=57;i++)
  37.       keymap.push(i);
  38.     for (var i=65;i<=90;i++)
  39.       keymap.push(i);
  40.     return keymap;
  41.   },
  42.  
  43.  
  44.   isAllowed : function(ev){
  45.     var keymap = this._doKeymap();
  46.     if ([16,17,18,0,224].indexOf(ev.keyCode)!=-1)
  47.       return -3;
  48.     //ONLY SOME KEYSTROKES ARE ACCEPTED!
  49.     if ((!ev.metaKey)&&(!ev.ctrlKey)&&(!ev.altKey)) //NOT KEYSTROKE
  50.       return -2;
  51.     if (keymap.indexOf(ev.keyCode) == -1) //KEY NOT ALLOWED
  52.       return -1;
  53.     return 1
  54.   },
  55.  
  56.  
  57.   keyev2string : function(ev){
  58.     var comb = Array();
  59.  
  60.     if (ev.ctrlKey)    comb.push("CTRL");
  61.     if (ev.altKey)     comb.push("ALT");
  62.     if (ev.shiftKey)     comb.push("SHIFT");
  63.     if (ev.metaKey)    comb.push("META");
  64.  
  65.     comb.push(String.fromCharCode(ev.keyCode));
  66.     return comb.join("-");
  67.   },
  68.  
  69.  
  70.   compareKeyevent : function(ev, str){
  71.     //alert(this.keyev2string(ev) + " - " + str);
  72.     return (this.keyev2string(ev) == str);
  73.   }
  74.  
  75. }
  76.